﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using CC;

namespace RFMS
{
    public partial class UrenschermAdmin : Form
    {
        public UrenschermAdmin()
        {
            InitializeComponent();
            werknemerBeheer = new WerknemerBeheer();
            urenBeheer = new UrenBeheer();
        }

        private WerknemerBeheer werknemerBeheer;
        private UrenBeheer urenBeheer;

        private void UrenschermAdmin_Load(object sender, EventArgs e)
        {
            var lijstMetWerknemers = werknemerBeheer.LijstVanWerknemers();
            foreach (var werknemers in lijstMetWerknemers)
            {
                c_urenAdmin.Items.Add(werknemers[1]);
            }

            dataGridView1.Rows.Clear();
            List<List<object>> overzichtLijst = urenBeheer.UrenOphalen();
            foreach (var overzicht in overzichtLijst)
            {
                object[] row = new object[] { overzicht[0], overzicht[1], overzicht[2], Convert.ToDateTime(overzicht[3]).ToString("HH:mm") };
                dataGridView1.Rows.Add(row);
            }
        }

        private void b_urenAdminZoeken_Click(object sender, EventArgs e)
        {
            dataGridView1.Rows.Clear();
            var overzichtLijst = new List<List<object>>();

            if (checkBox1.Checked && !checkBox2.Checked)
            {
                try
                {
                    overzichtLijst = urenBeheer.UrenOphalen(c_urenAdmin.SelectedItem.ToString());
                }
                catch (NullReferenceException)
                {
                    MessageBox.Show(@"Selecteer een gebruiker", @"Waarschuwing");
                }
            }
            else if (checkBox2.Checked && !checkBox1.Checked)
            {
                overzichtLijst = urenBeheer.UrenOphalen(date_urenAdmin.Value);
            }
            else if (checkBox1.Checked && checkBox2.Checked)
            {
                try
                {
                    overzichtLijst = urenBeheer.UrenOphalen(c_urenAdmin.SelectedItem.ToString(), date_urenAdmin.Value);
                }
                catch (NullReferenceException)
                {
                    MessageBox.Show(@"Selecteer een gebruiker", @"Waarschuwing");
                }
            }
            else
            {
                overzichtLijst = urenBeheer.UrenOphalen();
            }
            
            foreach (var overzicht in overzichtLijst)
            {
                var row = new object[] { overzicht[0], overzicht[1], overzicht[2], Convert.ToDateTime(overzicht[3]).ToString("HH:mm") };
                dataGridView1.Rows.Add(row);
            }
        }

        private void c_urenAdmin_SelectedIndexChanged(object sender, EventArgs e)
        {
            var medewerkerGegevens = urenBeheer.UrenOphalen(c_urenAdmin.SelectedItem.ToString());
        }

        private void date_urenAdmin_ValueChanged(object sender, EventArgs e)
        {

        }
    }
}
